package sing.myapp.temp;///*
// * Copyright (C) 2017 Baidu, Inc. All Rights Reserved.
// */
//package sing.myapp.temp;
//
//import android.content.Context;
//
//import com.baidu.ocr.sdk.OCR;
//import com.baidu.ocr.sdk.OnResultListener;
//import com.baidu.ocr.sdk.exception.OCRError;
//import com.baidu.ocr.sdk.model.BankCardParams;
//import com.baidu.ocr.sdk.model.BankCardResult;
//import com.baidu.ocr.sdk.model.GeneralBasicParams;
//import com.baidu.ocr.sdk.model.GeneralParams;
//import com.baidu.ocr.sdk.model.GeneralResult;
//import com.baidu.ocr.sdk.model.OcrRequestParams;
//import com.baidu.ocr.sdk.model.OcrResponseResult;
//import com.baidu.ocr.sdk.model.Word;
//import com.baidu.ocr.sdk.model.WordSimple;
//
//import java.io.File;
//
///**
// * Created by ruanshimin on 2017/4/20.
// */
//
//public class RecognizeService {
//
//    interface ServiceListener {
//        public void onResult(String result);
//    }
//
//    public static void recGeneral(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralParams param = new GeneralParams();
//        param.setDetectDirection(true);
//        param.setVertexesLocation(true);
//        param.setRecognizeGranularity(GeneralParams.GRANULARITY_SMALL);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeGeneral(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    Word word = (Word) wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recAccurate(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralParams param = new GeneralParams();
//        param.setDetectDirection(true);
//        param.setVertexesLocation(true);
//        param.setRecognizeGranularity(GeneralParams.GRANULARITY_SMALL);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeAccurate(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    Word word = (Word) wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recAccurateBasic(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralParams param = new GeneralParams();
//        param.setDetectDirection(true);
//        param.setVertexesLocation(true);
//        param.setRecognizeGranularity(GeneralParams.GRANULARITY_SMALL);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeAccurateBasic(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    WordSimple word = wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//
//    public static void recGeneralBasic(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralBasicParams param = new GeneralBasicParams();
//        param.setDetectDirection(true);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeGeneralBasic(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    WordSimple word = wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recGeneralEnhanced(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralBasicParams param = new GeneralBasicParams();
//        param.setDetectDirection(true);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeGeneralEnhanced(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    WordSimple word = wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recWebimage(Context ctx, String filePath, final ServiceListener listener) {
//        GeneralBasicParams param = new GeneralBasicParams();
//        param.setDetectDirection(true);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeWebimage(param, new OnResultListener<GeneralResult>() {
//            @Override
//            public void onResult(GeneralResult result) {
//                StringBuilder sb = new StringBuilder();
//                for (WordSimple wordSimple : result.getWordList()) {
//                    WordSimple word = wordSimple;
//                    sb.append(word.getWords());
//                    sb.append("\n");
//                }
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recBankCard(Context ctx, String filePath, final ServiceListener listener) {
//        BankCardParams param = new BankCardParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeBankCard(param, new OnResultListener<BankCardResult>() {
//            @Override
//            public void onResult(BankCardResult result) {
//                /*String res = String.format("卡号：%s\n类型：%s\n发卡行：%s\n有效日期：%s\n持有者姓名：%s",
//                        result.getBankCardNumber(),
//                        result.getBankCardType().name(),
//                        result.getBankName(),
//                        result.getValid_date(),
//                        result.getHolder_name());
//                listener.onResult(res);*/
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recVehicleLicense(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeVehicleLicense(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recDrivingLicense(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeDrivingLicense(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recLicensePlate(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeLicensePlate(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recBusinessLicense(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeBusinessLicense(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recReceipt(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        param.putParam("detect_direction", "true");
//        OCR.getInstance(ctx).recognizeReceipt(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recTaxireceipt(Context ctx, String filePath, final ServiceListener listener){
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeTaxireceipt(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recVincode(Context ctx, String filePath, final ServiceListener listener){
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeVincode(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recTrainticket(Context ctx, String filePath, final ServiceListener listener){
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeTrainticket(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recPassport(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizePassport(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recVatInvoice(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeVatInvoice(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recQrcode(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeQrcode(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recNumbers(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeNumbers(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recLottery(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeLottery(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recBusinessCard(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeBusinessCard(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recHandwriting(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeHandwriting(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recCustom(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.putParam("templateSign", "");
//        param.putParam("classifierId", 0);
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recognizeCustom(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recTripTicket(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeTripTicket(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recCarSellInvoice(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeVihickleSellInvoice(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recVihicleCertification(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeVihickleCertificate(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recExampleDoc(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeExampleDoc(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recWrittenText(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeWrittenText(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recHuKouPage(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeHuKouPage(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recNormalMachineInvoice(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeNormalMachineInvoice(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recweightnote(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeweightnote(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void recmedicaldetail(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzemedicaldetail(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//
//    public static void reconlinetaxiitinerary(Context ctx, String filePath, final ServiceListener listener) {
//        OcrRequestParams param = new OcrRequestParams();
//        param.setImageFile(new File(filePath));
//        OCR.getInstance(ctx).recoginzeonlinetaxiitinerary(param, new OnResultListener<OcrResponseResult>() {
//            @Override
//            public void onResult(OcrResponseResult result) {
//                listener.onResult(result.getJsonRes());
//            }
//
//            @Override
//            public void onError(OCRError error) {
//                listener.onResult(error.getMessage());
//            }
//        });
//    }
//}
